package com.zmm.member.service;

import com.zmm.common.dict.enums.RegionType;
import com.zmm.common.dict.enums.RegionVersion;
import com.zmm.common.dict.model.Region;

import java.util.Collection;

/**
 * @author 900045
 * @description:
 * @name DictService
 * @date By 2021-07-23 15:12:22
 */
public interface DictService {


	/**
	 * 从缓存中取来 相应的数据
	 * @author: 900045
	 * @date: 2021-07-23 15:13:15
	 * @throws 
	 * @param regionVersion: 
	 * @param regionType: 
	 * @param parent: 
	 * @param regionId: 
	 * @return: java.lang.String
	 **/
	String fetchRegionName(RegionVersion regionVersion, RegionType regionType, Integer parent, Integer regionId);


	/**
	 * 获取地区对象 1.0 -- 接口
	 * @author: 900045
	 * @date: 2021-07-23 15:15:11
	 * @throws 
	 * @param regionType: 
	 * @param parent: 
	 * @param regionId: 
	 * @version 1.0   
	 * @return: com.zmm.common.dict.model.Region
	 **/
	Region fetchRegion(RegionType regionType, Integer parent, Integer regionId);


	/**
	 * 获取地区对象 2.0 -- 接口
	 * @author: 900045
	 * @date: 2021-07-23 15:29:51
	 * @throws 
	 * @param regionVersion: 
	 * @param regionType: 
	 * @param parent: 
	 * @param regionId: 
	 * @version 2.0
	 * @return: com.zmm.common.dict.model.Region
	 **/
	Region fetchRegion(RegionVersion regionVersion, RegionType regionType, Integer parent, Integer regionId);

	/**
	 * 地址版本 2.0信息加载 -- 接口
	 * @author: 900045
	 * @date: 2021-08-04 14:38:09
	 * @throws 
	 * @param regionVersion: 版本 2.0
	 * @param regionType: 
	 * @param parent: 
	 * @return: java.util.Collection<com.zmm.common.dict.model.Region>
	 **/
	Collection<Region> queryRegionReload(RegionVersion regionVersion, RegionType regionType, Integer parent);

	/**
	 * 地址版本 1.0 信息加载 -- 接口
	 * @author: 900045
	 * @date: 2021-08-04 14:45:53
	 * @throws 
	 * @param regionType: 
	 * @param parent: 
	 * @return: java.util.Collection<com.zmm.common.dict.model.Region>
	 **/
	Collection<Region> queryRegionReload(RegionType regionType, Integer parent);
}
